gl renderer: Only take glyph texture alpha into account
authorTimm Bäder <mail@baedert.org>
Sat, 9 Dec 2017 17:31:28 +0000 (18:31 +0100)
committerTimm Bäder <mail@baedert.org>
Thu, 21 Dec 2017 18:12:32 +0000 (19:12 +0100)
This way, we can use the very same coloring program to draw text shadows
of fonts with colored glyphs.

gsk/resources/glsl/coloring.fs.glsl
gsk/resources/glsl/shadow.fs.glsl

index 120c13cd6c539b1b771bc63abe9ad74bd0eedb04..9faab8c45b1c243863800d479b665952d4657f49 100644 (file)
@@ -1,4 +1,3 @@
-
 uniform vec4 u_color;
 
 void main() {
@@ -8,5 +7,7 @@ void main() {
   // pre-multiply
   color.rgb *= color.a;
 
-  setOutputColor((diffuse * color) * u_alpha);
+  color = vec4(u_color.rgb * diffuse.a * u_alpha, diffuse.a * color.a * u_alpha);
+
+  setOutputColor(color);
 }
index f3535f13615f6d4a0903de18eaf0094be6df8fa1..9faab8c45b1c243863800d479b665952d4657f49 100644 (file)
@@ -7,7 +7,7 @@ void main() {
   // pre-multiply
   color.rgb *= color.a;
 
-  color = vec4(u_color.rgb * diffuse.a, diffuse.a * color.a);
+  color = vec4(u_color.rgb * diffuse.a * u_alpha, diffuse.a * color.a * u_alpha);
 
   setOutputColor(color);
 }